package fl.ass.service.transform;

import java.util.ArrayList;
import java.util.List;

import fl.ass.facade.dto.AssParkingDTO;
import fl.ass.service.po.AssParking;
import cn.cmm.base.framework.utils.CollectionUtils;

 /**
 * @Description: 停车场表 转换器
 * @Description: 服务层与展现层转换类
 * @Description: 所有的PO只能在持久成和服务层使用
 * @Description: 所有的DTO只能在展现层和服务层使用
 * @Description: 在服务层中向下是DTO转PO,向上是PO转DTO
 */
public class AssParkingTransform {


	/**
	 * PO 转  DTO
	 * @param po AssParking
	 * @return AssParkingDTO
	 */
	public static AssParkingDTO toDTO(AssParking po) {
		AssParkingDTO  dto = null;
		if (po != null) { 
			dto = new AssParkingDTO();
			dto.setId(po.getId());
			dto.setParkCd(po.getParkCd());//停车场编号
			dto.setParkNm(po.getParkNm());//停车场名称
			dto.setParkAddress(po.getParkAddress());//停车场地址
			dto.setProvinceCd(po.getProvinceCd());//所属省
			dto.setCityCd(po.getCityCd());//所属市
			dto.setContactNm(po.getContactNm());//联系人名称
			dto.setContactTel(po.getContactTel());//联系人电话
			dto.setIsDel(po.getIsDel());//是否删除 1-删除 0-正常

			dto.setCrtTm(po.getCrtTm());//创建时间
			dto.setCrtUsrId(po.getCrtUsrId());//创建人
			dto.setMdfTm(po.getMdfTm());//修改时间
			dto.setMdfUsrId(po.getMdfUsrId());//修改人
			
			//新增页面所需参数-JiLi-20170310
			dto.setProvinceCity(po.getProvinceCity());//停车场所在城市
			dto.setAssManagers(po.getAssManagers());//资产管理员
			dto.setValidDate(po.getValidDate());//合同有效期
			dto.setParkStatus(po.getParkStatus());//停车场状态
			dto.setvFlag(po.getvFlag());//续签状态
			dto.setValidId(po.getValidId());//有效期ID
			dto.setBeginDt(po.getBeginDt());//开始日期
			dto.setEndDt(po.getEndDt());//结束日期
			//导出停车场信息需要-JiLi-20170315
			dto.setParkSt(po.getParkSt());//停车场状态-中文
			dto.setValidSt(po.getValidSt());//续签状态-中文
            dto.setProvinceCode(po.getProvinceCode());// 省份代码
		}
		return dto;
	}

	/**
	 * DTO 转  PO
	 * @param dto AssParkingDTO
	 * @return AssParking
	 */
	public static AssParking toPO(AssParkingDTO dto) {
		AssParking po = null;
		if (dto != null) {
			po = new AssParking();
			po.setId(dto.getId());
			po.setParkCd(dto.getParkCd());//停车场编号
			po.setParkNm(dto.getParkNm());//停车场名称
			po.setParkAddress(dto.getParkAddress());//停车场地址
			po.setProvinceCd(dto.getProvinceCd());//所属省
			po.setCityCd(dto.getCityCd());//所属市
			po.setContactNm(dto.getContactNm());//联系人名称
			po.setContactTel(dto.getContactTel());//联系人电话
			po.setIsDel(dto.getIsDel());//是否删除 1-删除 0-正常

			po.setCrtTm(dto.getCrtTm());//创建时间
			po.setCrtUsrId(dto.getCrtUsrId());//创建人
			po.setMdfTm(dto.getMdfTm());//修改时间
			po.setMdfUsrId(dto.getMdfUsrId());//修改人
			
			//新增页面所需参数-JiLi-20170310
			po.setProvinceCity(dto.getProvinceCity());//停车场所在城市
			po.setAssManagers(dto.getAssManagers());//资产管理员
			po.setValidDate(dto.getValidDate());//合同有效期
			po.setParkStatus(dto.getParkStatus());//停车场状态
			po.setvFlag(dto.getvFlag());//续签状态
			po.setValidId(dto.getValidId());//有效期ID
			po.setBeginDt(dto.getBeginDt());//开始日期
			po.setEndDt(dto.getEndDt());//结束日期
			//导出停车场信息需要-JiLi-20170315
			po.setParkSt(dto.getParkSt());//停车场状态-中文
			po.setValidSt(dto.getValidSt());//续签状态-中文
            po.setProvinceCode(dto.getProvinceCode());// 省份代码
		}
		return po;
	}
	
	/**
	 * PO集合 转 DTO集合
	 * @param list List<AssParking>
	 * @return List<AssParkingDTO>
	 */
	public static List<AssParkingDTO> toDTOList(List<AssParking> list) {
		List<AssParkingDTO>  voList = new ArrayList<AssParkingDTO>();
		if(CollectionUtils.isNotEmpty(list)){
			for (AssParking po : list) {
				voList.add(toDTO(po));
			}
		}
		return voList;
	}
}
